package com.zhongke.cotrun.model.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;

import javax.validation.constraints.NotNull;

@ApiModel(value = "经纪人工作记录表")
@Data
public class AgentJobs {
	
	@ApiModelProperty(value = "id主键", example = "1")
	@TableId(type = IdType.AUTO)
	@NotNull(message = "id不能为空")
    private Long id;     
	
	@ApiModelProperty(value = "经纪人附加信息表主键", example = "1")
    @NotNull(message = "经纪人附加信息表主键不能为空")
    private Long agentInfoId;
	
    @ApiModelProperty(value = "用户表主键", example = "1")
    @NotNull(message = "用户表主键不能为空")
    private Long userInfoId;
    
    @ApiModelProperty(value = "工作主体主键", example = "1")
    @NotNull(message = "工作主体主键不能为空")
    private Long mainId;
        
    @ApiModelProperty(value = "工作类型 0-项目 1-专家 2-需求", example = "0")    
    @NotNull(message = "工作类型不能为空")
    private String type;
    
    @ApiModelProperty(value = "工作状态 0-未开始 1-进行中  2-已完成 3-更换暂停", example = "0")    
    private String state;
    
    @ApiModelProperty(value = "更换原因", example = "123")    
    private String reasonNote;
    
    @ApiModelProperty(value = "评价内容", example = "123")    
    private String appraise;
    
    @ApiModelProperty(value = "建议内容", example = "123")    
    private String recommendNote;
    
    @ApiModelProperty(value = "评分", example = "5")    
    private Integer score;    
        
    @ApiModelProperty(value = "备注", example = "123")   
    private String remarks;
    @ApiModelProperty(value = "创建人", example = "123")  
    private Long createBy;
    @ApiModelProperty(value = "更新人", example = "123")  
    private Long updateBy;
    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createDate;    
    @ApiModelProperty(value = "更新时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateDate;    
    @ApiModelProperty(value = "删除标记（0：正常；1：回收站）", example = "0")    
    private String delFlag;
    
    @TableField(exist = false) 
    private ProjectInfo projectInfo;
    @TableField(exist = false) 
    private ExpertInfo expertInfo;
    @TableField(exist = false) 
    private NeedInfo needInfo;
}
